Visualização 2D

Plotando uma função f(x):

> plot(x^2-1, x=-2..2, y=-1..4, scaling=constrained, color=blue, thickness=2);

[Maple Plot]

Plotando uma curva parametrizada:

> plot([t^2, t^3, t=-1..1], scaling=constrained, thickness=2, color=blue, title=`Cúspide`);

[Maple Plot]

Plotando uma poligonal:

> plot([[0,0], [4,4], [4,0], [0,4], [0,0]], scaling=constrained);

[Maple Plot]

Plotando um polígono:

> with(plots):

> polygonplot([[0,0], [4,4], [0,4]], scaling=constrained, color=blue);

[Maple Plot]

Plotando uma curva implícita:

> restart; with(plots):

> implicitplot(x^2+2*y^2=1, x=-1..1, y=-1..1, scaling=constrained, title=`Uma elipse`);

[Maple Plot]

Plotando várias figuras 2D, simultaneamente:

> plot({x^2, x^3, x^4}, x=-1..1); # conjunto de funções, com cores escolhidas pelo Maple

[Maple Plot]

> plot([x^2, x^3, x^4], x=-1..1, color=[red, blue, green]); # você escolhe as cores --- experimente outras opções --- na ordem

[Maple Plot]

> plot([[t^2, t^3, t=-1..1], [t, t^2, t=-1..1]], color=[red, blue]); # ídem com curvas parametrizadas

[Maple Plot]

> polygonplot({[[0,0], [1,0], [1,1]], [[0,0],[1,1], [0,1]]}); # já não funciona bem para distinguir os polígonos! Tentemos então:

[Maple Plot]

> p1 := polygonplot([[0,0], [1,0], [1,1]], color=red):

> p2 := polygonplot([[0,0], [1,1], [0,1]], color=blue):

> display({p1, p2});

[Maple Plot]

> implicitplot({x^2-y^2=1, x^2-y^2=0}, x=-2..2, y=-2..2, scaling=constrained, axes=none, title=`Hipérbole e suas assíntotas`); # E nesse, será que dá para ordenar as entradas e as opções?

[Maple Plot]

Animações simples em 2D, com uso do animate:

> restart; with(plots):

> animate(s*x^2, x=-1..1, s=0..1);

[Maple Plot]

> animate([t^2, s*t^3, t=-1..1], s=0..1);

[Maple Plot]

> animate({[t, sin(t+s), t=0..4*Pi], [t, sin(t), t=0..4*Pi]} ,s=0..2, color=blue);

[Maple Plot]

Aplicando para animar uma trajetória:

> x := t -> cos(t): y := t -> sin(t): equações paramétricas do caminho

> tmin := -Pi: tmax := Pi:

> T := (t,s) -> tmin + s*(t-tmin): função que introduz o parâmetro para animação s. Para s=0, um ponto; para s=1, todo o traço da curva, de tmin a tmax; para s entre 0 e 1, parte proporcional do traço da curva.

> animate( [x(T(t,s)), y(T(t,s)), t=tmin..tmax], s=0..1, scaling=constrained, color=blue, thickness=2);

[Maple Plot]

Rodando um polígono em torno da origem:

> M := theta -> matrix([[cos(theta), -sin(theta)], [sin(theta), cos(theta)]]); função que a cada [Maple Math] associa a matriz de rotação de ângulo [Maple Math] . Se quiser um cisalhamento, ou qualquer outra transformação linear, basta mudar as entradas da matriz

[Maple Math]

> Rot := (theta,P) -> convert(evalm(M(theta)&*P), 'list'); função que a cada par (theta, P) , onde theta é ângulo e P é um ponto do plano, associa o ponto rodado. Converte-se o resultado de evalm , que é um array, para list.

[Maple Math]

> map2(Rot, theta, [[1,0], [0,1]]); detalhe de como aplicar a rotação acima numa lista de pontos

[Maple Math]

> pol := [[0,0], [1,0], [2,2], [0,1]]; lista de vértices de um polígono

[Maple Math]

> for i from 0 to 10 do

> ti := i*2*Pi/10; parâmetro para o quadro

> quadro[i] := polygonplot(map2(Rot, ti, pol), color=yellow): quadro de polígono rotacionado

> od:

> display([seq(quadro[i],i=0..10)], insequence=true, scaling=constrained); mostrando a animação

[Maple Plot]

Aproveitando as funções acima para rodar uma curva parametrizada.

> for i from 0 to 10 do

> ti := i*2*Pi/10;

> quadro[i] := plot([op(Rot(ti, [t^2, t^3])), t=-1..1 ], color=blue): quadro de curva rotacionada

> od:

> display([seq(quadro[i], i=0..10)], insequence=true);

[Maple Plot]

Voltar para o Sumário